package com.wicket.okrapp.web.contorller;

import com.wicket.okrapp.biz.service.TargetContComService;
import com.wicket.okrapp.biz.service.dto.req.*;
import com.wicket.okrapp.biz.service.dto.res.*;
import com.wicket.okrapp.common.ro.OkrResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@RestController
@RequestMapping("/app/targetContCom/")
public class TargetContComController {

  @Autowired
  TargetContComService targetContComService;
/**
   * D3初始化目标周期目标设置(公共)
   */
    @PostMapping("implementInitializeTargetCycleOsetCom")
    public OkrResult<ImplementInitializeTargetCycleOsetComRespDto> implementInitializeTargetCycleOsetCom(@RequestBody @Validated ImplementInitializeTargetCycleOsetComReqDto reqDTO){
    return OkrResult.success(targetContComService.implementInitializeTargetCycleOsetCom(reqDTO));
    }
/**
   * D3查询目标周期目标设置详情(公共)
   */
    @PostMapping("queryTargetCycleOsetDetailCom")
    public OkrResult<QueryTargetCycleOsetDetailComRespDto> queryTargetCycleOsetDetailCom(@RequestBody @Validated QueryTargetCycleOsetDetailComReqDto reqDTO){
    return OkrResult.success(targetContComService.queryTargetCycleOsetDetailCom(reqDTO));
    }
/**
   * D3查询被评目标周期列表(公共)
   */
    @PostMapping("queryEvaTargetCycleListCom")
    public OkrResult<QueryEvaTargetCycleListComRespDto> queryEvaTargetCycleListCom(@RequestBody @Validated QueryEvaTargetCycleListComReqDto reqDTO){
    return OkrResult.success(targetContComService.queryEvaTargetCycleListCom(reqDTO));
    }
/**
   * D3查询指标详情(公共)
   */
    @PostMapping("queryTargetObjectiveDetailCom")
    public OkrResult<QueryTargetObjectiveDetailComRespDto> queryTargetObjectiveDetailCom(@RequestBody @Validated QueryTargetObjectiveDetailComReqDto reqDTO){
    return OkrResult.success(targetContComService.queryTargetObjectiveDetailCom(reqDTO));
    }
/**
   * D3分析对齐时间与是否对齐(公共)
   */
    @PostMapping("analysisAlignmentTimeAndIsAlignmentCom")
    public OkrResult<AnalysisAlignmentTimeAndIsAlignmentComRespDto> analysisAlignmentTimeAndIsAlignmentCom(@RequestBody @Validated AnalysisAlignmentTimeAndIsAlignmentComReqDto reqDTO){
    return OkrResult.success(targetContComService.analysisAlignmentTimeAndIsAlignmentCom(reqDTO));
    }
/**
   * D3分析对齐指标关联信息(公共)
   */
    @PostMapping("analysisAlignmentObjectiveRelevancyInfoCom")
    public OkrResult<AnalysisAlignmentObjectiveRelevancyInfoComRespDto> analysisAlignmentObjectiveRelevancyInfoCom(@RequestBody @Validated AnalysisAlignmentObjectiveRelevancyInfoComReqDto reqDTO){
    return OkrResult.success(targetContComService.analysisAlignmentObjectiveRelevancyInfoCom(reqDTO));
    }
/**
   * D3批量改目标内容编号(公共)
   */
    @PostMapping("batchUpdateTargetContentNumberCom")
    public OkrResult<BatchUpdateTargetContentNumberComRespDto> batchUpdateTargetContentNumberCom(@RequestBody @Validated BatchUpdateTargetContentNumberComReqDto reqDTO){
    return OkrResult.success(targetContComService.batchUpdateTargetContentNumberCom(reqDTO));
    }
/**
   * D3执行初始化目标分类编号(公共)
   */
    @PostMapping("implementInitializeCategoryNumberCom")
    public OkrResult<ImplementInitializeCategoryNumberComRespDto> implementInitializeCategoryNumberCom(@RequestBody @Validated ImplementInitializeCategoryNumberComReqDto reqDTO){
    return OkrResult.success(targetContComService.implementInitializeCategoryNumberCom(reqDTO));
    }
/**
   * D3查询目标周期祖先数据源列表
   */
    @PostMapping("queryTargetCycleAncestorDataOriginList")
    public OkrResult<QueryTargetCycleAncestorDataOriginListRespDto> queryTargetCycleAncestorDataOriginList(@RequestBody @Validated QueryTargetCycleAncestorDataOriginListReqDto reqDTO){
    return OkrResult.success(targetContComService.queryTargetCycleAncestorDataOriginList(reqDTO));
    }
/**
   * D3执行刷全模板目标内容树排序
   */
    @PostMapping("implementBrushTempTargetContTreeOrderNum")
    public OkrResult<ImplementBrushTempTargetContTreeOrderNumRespDto> implementBrushTempTargetContTreeOrderNum(@RequestBody @Validated ImplementBrushTempTargetContTreeOrderNumReqDto reqDTO){
    return OkrResult.success(targetContComService.implementBrushTempTargetContTreeOrderNum(reqDTO));
    }
/**
   * D3执行回写目标周期树排序(公共)
   */
    @PostMapping("implementWriteBackTargetCycleTreeOrderNumberCom")
    public OkrResult<ImplementWriteBackTargetCycleTreeOrderNumberComRespDto> implementWriteBackTargetCycleTreeOrderNumberCom(@RequestBody @Validated ImplementWriteBackTargetCycleTreeOrderNumberComReqDto reqDTO){
    return OkrResult.success(targetContComService.implementWriteBackTargetCycleTreeOrderNumberCom(reqDTO));
    }
/**
   * D3执行循环回写目标周期树排序(公共)
   */
    @PostMapping("implementLoopWriteBackTargetCycleTreeOrderNumberCom")
    public OkrResult<ImplementLoopWriteBackTargetCycleTreeOrderNumberComRespDto> implementLoopWriteBackTargetCycleTreeOrderNumberCom(@RequestBody @Validated ImplementLoopWriteBackTargetCycleTreeOrderNumberComReqDto reqDTO){
    return OkrResult.success(targetContComService.implementLoopWriteBackTargetCycleTreeOrderNumberCom(reqDTO));
    }
/**
   * D3查询目标内容属性公共信息(公共)
   */
    @PostMapping("queryTargetContNatureComInfoDetailCom")
    public OkrResult<QueryTargetContNatureComInfoDetailComRespDto> queryTargetContNatureComInfoDetailCom(@RequestBody @Validated QueryTargetContNatureComInfoDetailComReqDto reqDTO){
    return OkrResult.success(targetContComService.queryTargetContNatureComInfoDetailCom(reqDTO));
    }
/**
   * D3查询目标内容面包屑列表
   */
    @PostMapping("queryTargetContCrumbsList")
    public OkrResult<QueryTargetContCrumbsListRespDto> queryTargetContCrumbsList(@RequestBody @Validated QueryTargetContCrumbsListReqDto reqDTO){
    return OkrResult.success(targetContComService.queryTargetContCrumbsList(reqDTO));
    }
/**
   * D3批量查目标周期By内容ID（时间范围切）(公共)
   */
    @PostMapping("implementBatchQueryByContIdTimeSectionCom")
    public OkrResult<ImplementBatchQueryByContIdTimeSectionComRespDto> implementBatchQueryByContIdTimeSectionCom(@RequestBody @Validated ImplementBatchQueryByContIdTimeSectionComReqDto reqDTO){
    return OkrResult.success(targetContComService.implementBatchQueryByContIdTimeSectionCom(reqDTO));
    }
/**
   * D3查询规划数据导出内容范围列表(公共)
   */
    @PostMapping("queryPlanningDataExportRangeListCom")
    public OkrResult<QueryPlanningDataExportRangeListComRespDto> queryPlanningDataExportRangeListCom(@RequestBody @Validated QueryPlanningDataExportRangeListComReqDto reqDTO){
    return OkrResult.success(targetContComService.queryPlanningDataExportRangeListCom(reqDTO));
    }
/**
   * D3查询规划数据导出内容明细列表(公共)
   */
    @PostMapping("queryPlanningDataExportDetailListCom")
    public OkrResult<QueryPlanningDataExportDetailListComRespDto> queryPlanningDataExportDetailListCom(@RequestBody @Validated QueryPlanningDataExportDetailListComReqDto reqDTO){
    return OkrResult.success(targetContComService.queryPlanningDataExportDetailListCom(reqDTO));
    }
/**
   * D3分析目标内容生命周期(公共)
   */
    @PostMapping("analysisTargetContentSubjectLifeCom")
    public OkrResult<AnalysisTargetContentSubjectLifeComRespDto> analysisTargetContentSubjectLifeCom(@RequestBody @Validated AnalysisTargetContentSubjectLifeComReqDto reqDTO){
    return OkrResult.success(targetContComService.analysisTargetContentSubjectLifeCom(reqDTO));
    }
///**
//   * D3查询指标详情(公共)
//   */
//    @PostMapping("queryTargetObjectiveDetailCom")
//    public OkrResult<QueryTargetObjectiveDetailComRespDto> queryTargetObjectiveDetailCom(@RequestBody @Validated QueryTargetObjectiveDetailComReqDto reqDTO){
//    return OkrResult.success(targetContComService.queryTargetObjectiveDetailCom(reqDTO));
//    }
}
